package com.cskaoyan.day4._02_arraylist;

import java.util.ArrayList;

/**
 * @author Common-zhou
 * @since 2023-03-02 10:51
 */
public class Demo3 {
    public static void main(String[] args) {
        //test1();

        test2();

        //List<String> list = new ArrayList<>();
        //List<String> list = new LinkedList<>();

    }

    private static void test2() {
        //    void trimToSize()
        //    将此 ArrayList 实例的容量调整为列表的当前大小。

        ArrayList<String> arrayList = new ArrayList<>(1000);

        arrayList.add("zs");
        arrayList.add("ls");
        // 删除掉多余的 null
        arrayList.trimToSize();

        arrayList.add("zl");

    }

    private static void test1() {
        //    void ensureCapacity(int minCapacity)
        //    如有必要，增加此 ArrayList 实例的容量，以确保它至少能够容纳最小容量参数所指定的元素数。

        ArrayList<String> arrayList = new ArrayList<>(20);

        // 就是比较。你传过来的数字，和当前的elementData大小；
        // 如果传过来的数字小，不会做任何事情
        // 如果传过来的大，会把数组长度变大
        //arrayList.ensureCapacity(10);
        arrayList.ensureCapacity(1000);

        arrayList.add("zs");

    }
}
